package com.woniuxy.rms.service;

import com.woniuxy.rms.dto.LoginDTO;
import com.woniuxy.rms.pojo.Admins;
import com.woniuxy.rms.util.DataResult;

import java.util.List;

/**
 * Auther: ChenGang  <br/>
 * Date: 2020/3/29 0029:下午 4:12  <br/>
 * Description:用户服务层
 */
public interface AdminService {
    /**
     * Description : 用户登录  <br/>
     * ChangeLog : 1. 创建 (2020/3/29 0029 下午 4:14 [Administrator]); 
     * @param loginDTO  
     * @return com.woniuxy.rms.util.DataResult
    */
    DataResult login(LoginDTO loginDTO);

    /**
     * Description : 用户注册  <br/>
     * ChangeLog : 1. 创建 (2020/3/29 0029 下午 4:22 [Administrator]);
     * @param admins
     * @param code
     * @return com.woniuxy.rms.util.DataResult
    */
    DataResult rigerter(Admins admins, String code);

    /**
     * Description : 查询管理员信息  <br/>
     * ChangeLog : 1. 创建 (2020/3/29 0029 下午 11:47 [Administrator]);
     * @param currentPage
     * @param pageSize
     * @return java.util.List<com.woniuxy.rms.pojo.Admins>
    */
    List<Admins> findByPage(Integer currentPage, Integer pageSize);
    /**
     * Description : 编辑管理员角色  <br/>
     * ChangeLog : 1. 创建 (2020/3/30 0030 上午 12:01 [Administrator]);
     * @param admins
     * @return com.woniuxy.rms.util.DataResult
    */
    DataResult editAdminRole(Admins admins);

    Admins findById(Long id);

    /**
     * Description : 修改个人资料  <br/>
     * ChangeLog : 1. 创建 (2020/3/31 0031 上午 10:21 [Administrator]);
     * @param admins
     * @return com.woniuxy.rms.util.DataResult
    */
    DataResult updateAdmin(Admins admins);
    /**
     * Description : 密码重置  <br/>
     * ChangeLog : 1. 创建 (2020/3/31 0031 上午 10:56 [Administrator]);
     * @param admins
     * @param code
     * @return com.woniuxy.rms.util.DataResult
     */
    DataResult changePwd(Admins admins, String code);
    /**
     * Description : 删除管理员  <br/>
     * ChangeLog : 1. 创建 (2020/4/8 0008 下午 12:44 [Administrator]);
     * @param id
     * @return com.woniuxy.rms.util.DataResult
     */
    DataResult delete(Long id);
}